Interrupt 21h Function 71A7h Minor Code 1h
Converts
MS-DOS date and time values to 64-bit file time.
mov ax, 71A7h
; date and time format conversion
mov bl, 1
; Dos Time To File Time
mov bh, MilliSeconds
; see below
mov cx, DOSTime
; see below
mov dx, DOSDate
; see below
mov di, seg lpft
; see below
mov es, di
mov di, offset lpft
int 21h
jc error
Parameters
MilliSeconds
Number of 10
millisecond intervals in 2 seconds to add to the MS-DOS time. The number can be
a value in the range 0 to 199.
DOSTime
MS-DOS time
to convert. The time is a packed 16-bit value with the following form:
Bits |
Contents |
0-4 |
Second
divided by 2 |
5-10 |
Minute (0-59) |
11-15 |
Hour (0-23 on a 24-hour clock) |
DOSDate
MS-DOS date
to convert. The date is a packed 16-bit value with the following form:
Bits |
Contents |
0-4 |
Day of the
month (1-31) |
5-8 |
Month (1 =
January, 2 = February, and so on) |
9-15 |
Year offset
from 1980 (that is, add 1980 to get the actual year) |
lpft
Address of a FILETIME
Return Value
Clears the
carry flag and returns the 64-bit file time in the specified structure if successful.
Otherwise, the function sets the carry flag and sets the AX register to an
error value.
Remarks
The time in FILETIME
must be Coordinated Universal Time (UTC). The MS-DOS time is local time.